/* oled.h */
#ifndef __OLED_H__
#define __OLED_H__
#include "u8g2.h"

#define OLED_ADDRESS 0x78  // oled模块从机地址

extern void oled_init();

uint8_t u8x8_byte_hw_i2c(u8x8_t *u8x8, uint8_t msg, uint8_t arg_int,void *arg_ptr);

uint8_t stm32_gpio_and_delay(U8X8_UNUSED u8x8_t *u8x8, uint8_t msg, uint8_t arg_int, void *arg_ptr);

//显示主屏幕，包含电池电量、温度、湿度、EC 数据
void Display_MainScreen(float batt, float temp, float humi, float ec);

//显示开机动画，包含设备名称和进度条
void Display_BootAnimation(void);

//显示线性进度条动画
void Display_LoadingBar(uint32_t elapsed_ms);

//显示波浪线动画，模拟数据流动或处理中的动态效果
void Display_WaveAnimation(uint32_t t);

//显示小球旋转加载动画，模拟等待或测量过程
void Display_LoadingAnimation(void);

#endif
